package com.project.mapper;

import com.project.bean.RoomBean;
import com.project.bean.StudentBean;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**房间持久接口*/
public interface IRoomMapper {
    /**
     * 按动态条件查询房间信息，同时统计每个房间的已住人数
     * @param roomName 房间地址
     * @param status 房间状态
     * @param habitable 可住房间
     * @param roomType 房间类型
     * @return 房间集合
     */
    public List<RoomBean> findByItem(@Param("roomName") String roomName,
                                    @Param("status") String status,
                                    @Param("habitable") String habitable,
                                    @Param("roomType") String roomType);

    /**
     * 添加房间
     * @param room 房间对象
     */
    public void addRoom(RoomBean room);

    /**
     * 按ID删除房间
     * @param roomId 房间ID
     */
    public void delRoom(int roomId);

    /**
     *  按id查询房间基本信息，同时统计房间已住人数
     * @param id 房间ID
     * @return 房间对象
     */
    public RoomBean findById(int id);

    /**
     * 修改房间状态
     * @param roomId 房间ID
     * @param state 房间状态
     */
    public void updateStatus(@Param("roomId") int roomId,@Param("state") String state);

    public List<RoomBean> cutItemList(@Param("start") int start, @Param("pageSize") int pageSize,
                                      @Param("roomName") String roomName,
                                      @Param("status") String status,
                                      @Param("habitable") String habitable,
                                      @Param("roomType") String roomType);
    public int cutItemCount(@Param("roomName") String roomName,
                            @Param("status") String status,
                            @Param("habitable") String habitable,
                            @Param("roomType") String roomType);
}
